Spring Boot是Spring开源组织下的子项目,是Spring组件一站式解决方案,主要是简化了使用Spring的难度,简省了繁重的配置,提供了各种启动器,开发者能快速上手。
1.Spring Boot的优点(主要结合比较Spring来谈)
- 帮助开发者更方便快捷地搭建Spring框架。
- 简化依赖导入,比如创建一个web项目,Spring下要在pom中添加多个依赖,而Spring Boot下只需要导入一个spring-boot-starter-web依赖即可,而其中已经包含了多个在Spring下需要的依赖。
- 简化配置,Spring下各种XML、Annotation配置非常复杂,而Spring Boot更多采用Java Config注解配置的方式,更加简便。另外在部署配置方面,原来Spring有多个xml和properties配置,在Spring Boot中只需要个application.yml即可。
- 简化部署,使用Spring时需要在服务器上部署tomcat,然后把项目打成war包扔到tomcat里。而Spring Boot内嵌了tomcat,因此不需要在服务器上部署tomcat,只需要将项目打成jar包,在服务器上使用java -jar xxx.jar一键式启动项目即可。
2.Java Config的优点
- 面向对象的配置。由于配置被定义为Java Config中的类,因此用户可以充分利用Java中的面向对象功能。一个配置类可以继承另一个,重写它的@Bean 方法等。
- 减少或消除 XML 配置。Java Config 为开发人员提供了一种纯 Java 方法来配置与 XML 配置概念相似的 Spring 容器。
- 类型安全和重构友好。Java Config 提供了一种类型安全的方法来配置 Spring容器。由于 Java 5.0 对泛型的支持,现在可以按类型而不是按名称检索 Bean,不需要任何强制转换或基于字符串的查找。